<?php
namespace apps\admin\controllers;
if( !defined( 'APP_ROOT' ) ){ echo 'Direct Access Deny!'; return; }

use helpers\DirUtils;
use apps\admin\ext\AdminBaseController;

/**
 * 全站静态化中心
 * @author Carey
 * @date( 2015-11-07 )
 */
class StaticsController  extends  AdminBaseController{
	
	public function initialze()
	{
		parent::initialize();
		//$this->checkPlatform();
	}
	
	/**
	 * @author( author='Carey' )
	 * @date( date = '2016年8月9日' )
	 * @comment( comment = '静态化中心' )    
	 * @method( method = 'indexAction' )
	 * @op( op = '' )    
	*/
	public function indexAction()
	{
	    
	}
	
	
	/**
	 * 创建对应的  module/controller/action/param 文件夹
	 * @param unknown $prefix 前缀
	 * @return boolean
	 */
	private function _optDirectory( $prefix )
	{
		$path = $this->staticCfg[ 'static_project_path' ] . '/';
		if( false == $prefix )
			return false;
		
        $destiny = $path . $prefix;
        
		$arrPre = array_filter( explode( '/' , $prefix ) );
		if( count( $arrPre ) > 0 )
		{
			$iLen = count( $arrPre );
			for( $i=1; $i<=$iLen; ++$i)
			{
				if( 1 == $i )
				{
					if( false == file_exists( $path . $arrPre[$i] ) )
						DirUtils::mkdir( $path , $arrPre[$i] );
				}
				else
				{
					$path .= $arrPre[$i-1] . '/';
					if( is_dir( $path ) && !file_exists( $path . $arrPre[$i] ) )
						DirUtils::mkdir( $path , $arrPre[$i] );
				}
			}
		}
		$this->_emptyFiles( $destiny );
	}
	
	/**
	 * 生成静态化之前先清空所有已生成的文件 避免存在已删除数据对应的静态化文件
	 * @param unknown $path   文件路径
	 */
	private function _emptyFiles( $path )
	{
	    if( !$path || !is_dir( $path ) )
	        return false;
	    
	    $files = scandir( $path );
	    foreach( $files as $file )
	    {
	       $dis_file_name = $path . '/' . $file;  
	       if( !is_dir( $dis_file_name ) && '.' != $file && '..' !=  $file )
	           unlink( $dis_file_name );
	     
	    }
	}
	
	
}

?>